Non-volatile memories such as NAND (not AND) and 3D-NAND flash memory and three dimensional (3D) cross point memory, etc., are prone to hard and soft errors that result in data retrieved from memory that is different from the data stored in memory. To overcome this problem storage devices, such as solid-state drives (SSD), are equipped with technology that goes to extreme lengths to make sure that the data being stored in and retrieved from the device is correct.
For example, many storage device manufacturers equip SSDs with a monitoring technology for detecting and reporting indicators of device reliability. Examples of commonly used indicators include reallocation sectors count, reported uncorrectable errors, power-on hours, read-write errors, etc.
As another example, many storage device manufacturers provide storage protection mechanisms that enable the recovery of data in the event of a data storage failure. On storage protection mechanism is an error control coding (ECC) protection scheme in which data is encoded in memory using storage redundancies that protect and ensure the reliability of stored data.
The use of monitoring and data protection schemes increase the expense of storage and can impact performance as well. However, not all applications need completely error-free storage. For example, applications that work with noisy data (e.g. image, sound, video data) can tolerate errors to a large extent and performance can be more critical than data fidelity.
Other features of the described embodiments will be apparent from the accompanying drawings and from the detailed description that follows.